package com.zone.trigger.api;

import com.zone.trigger.api.dto.*;
import com.zone.types.model.Response;

import java.util.List;

/**
 * @author: zongzi
 * @description: TODO
 * @date: 2025/2/25
 */
public interface IRaffleActivityService {

    Response<Boolean> armory(Long activityId);

    Response<RaffleActivityDrawResponseDTO> draw(RaffleActivityDrawRequestDTO request);

    /**
     * 签到
     *
     * @param userId
     * @return
     */

    Response<Boolean> sign(String userId);

    /**
     * 用户是否签到
     *
     * @param userId
     * @return
     */

    Response<Boolean> isUserSign(String userId);

    /**
     * 查询用户活动账户
     *
     * @param requestDTO
     * @return
     */
    Response<UserActivityAccountResponseDTO> queryUserActivityAccount(UserActivityAccountRequestDTO requestDTO);


    /**
     * 查询活动产品集合
     *
     * @param activityId 互动id
     * @return
     */
    Response<List<SkuProductResponseDTO>> querySkuProductList(Long activityId);

    /**
     * 积分兑换sku
     *
     * @param request
     * @return
     */
    Response<Boolean> creditPayExchangeSku(SkuProductOrderRequestDTO request);
}
